package com.water_work_form.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.water_work_form.entity.RecordDrugConsume;
import com.baomidou.mybatisplus.extension.service.IService;

import java.io.IOException;
import java.util.List;
import java.util.Map;

/**
 * <p>
 * 记录——在线仪表药剂领用登记表 服务类
 * </p>
 *
 * @author xuke
 * @since 2023-09-14
 */
public interface RecordDrugConsumeService extends IService<RecordDrugConsume> {

    /**
     * 记录——在线仪表药剂领用登记表 项目查询
     * @param deviceName 仪器名称（device_name）若非空匹配查询
     * @param drugName 药剂名称（drug_name）若非空匹配查询
     * @param status 状态（status）若非空匹配查询
     * @param current 分页 当前页
     * @param size 分页 每页最大数据量
     * @return 返回相应数据 按照状态（status）、领用日期（consume_date）的顺序进行升序排序
     */
    IPage<RecordDrugConsume> selectRecordDrugConsume(String deviceName, String drugName, String status, Integer current, Integer size);

    /**
     * 记录——在线仪表药剂领用登记表 基础表数据查询
     * @param name form表name
     * @return 返回相应数据 表名为键名
     */
    Map<String,Object> selectBasicDrugConsume(String name);


    List<RecordDrugConsume> listRecordDrugConsume(String deviceName, String drugName);

    void downloadRecordDrugConsume(List<RecordDrugConsume> recordDrugConsumeList, String deviceName, String drugName) throws IOException;
}
